package com.huirui.server.pojo.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Schema(description = "商品规格视图对象，包含商品具体规格的详细信息")
public class ProductSpecificationVo {

    @Schema(description = "规格ID", example = "2001", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private Long id;

    @Schema(description = "规格名称", example = "64GB 黑色", requiredMode = Schema.RequiredMode.REQUIRED)
    private String specificationName;

    @Schema(description = "规格对应的图片URL", example = "https://example.com/spec1.jpg", requiredMode = Schema.RequiredMode.REQUIRED)
    private String specificationImageUrl;

    @Schema(description = "销售价格", example = "3999.99", requiredMode = Schema.RequiredMode.REQUIRED)
    private BigDecimal discountPrice;

    @Schema(description = "商品原价")
    private BigDecimal originalPrice;

    @Schema(description = "秒杀价格")
    private BigDecimal seckillPrice;

    @Schema(description = "是否为默认规格（0-否，1-是）", example = "1", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
    private Integer isDefault;

    @Schema(description = "库存数量", example = "100", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer stock;

    @Schema(description = "促销价格")
    private BigDecimal promotionPrice;
}